module.exports = function (sequelize, DataTypes) {
    let dataSource = sequelize.define(
        'grab_source_conf', {
            station_id: {
                type: DataTypes.INTEGER(11),
                allowNull: false,
                autoIncrement: true,
                primaryKey: true
            },
            station_name_en: {
                type: DataTypes.STRING,
                allowNull: true
            },
            station_name_cn: {
                type: DataTypes.STRING,
                allowNull: true
            },
            entry_url: {
                type: DataTypes.STRING,
                allowNull: true
            },
            data_source_id: {
                type: DataTypes.INTEGER(11),
                allowNull: false
            },
            grab_freq: {
                type: DataTypes.STRING,
                allowNull: true
            },
            info_type_id: {
                type: DataTypes.INTEGER(11),
                allowNull: false
            },
            category_id: {
                type: DataTypes.INTEGER(11),
                allowNull: false
            },
            is_download_attachment: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_parser_attachment: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_download_vedio: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_norm_handle: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_handle_content: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_handle_pic: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_handle_table: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_segment: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_semantic_analysis: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_auto_labeling: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_remove_duplication: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_autoabstract: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_need_edit: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            is_force_edit: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            edit_system_id: {
                type: DataTypes.STRING,
                allowNull: true
            },
            is_corpus: {
                type: DataTypes.INTEGER(11),
                allowNull: false
            },
            is_text_mining: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            creator: {
                type: DataTypes.STRING,
                allowNull: true
            },
            creat_time: {
                type: DataTypes.DATE,
                allowNull: true
            },
            updator: {
                type: DataTypes.STRING,
                allowNull: true
            },
            update_time: {
                type: DataTypes.DATE,
                allowNull: true
            },
            status: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            crawlerInfo: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            crawler_type: {
                type: DataTypes.INTEGER(1),
                allowNull: false
            },
            config_list: {
                type: DataTypes.STRING,
                allowNull: true
            },
            main_list_name: {
                type: DataTypes.STRING,
                allowNull: true
            },
            grab_timer: {
                type: DataTypes.STRING,
                allowNull: true
            },
            station_degree: {
                type: DataTypes.INTEGER(11),
                allowNull: false
            },
            businessId: {
                type: DataTypes.STRING,
                allowNull: true
            }
            /*
            INTEGER: {
                type: DataTypes.INTEGER(11),
                allowNull: false
            },
            DATE: {
                type: DataTypes.DATE,
                allowNull: true
            },
            STRING: {
                type: DataTypes.STRING,
                allowNull: true
            },
            */
        },
        {
            tableName: 'grab_source_conf',
            timestamps: false
        }
    );

    return dataSource;
};

